package com.sinba.common.system.dao;

import com.sinba.common.dao.IEntityDAO;
import com.sinba.common.dto.PageDTO;
import com.sinba.common.system.dto.SingleGroupReportStatDTO;
import com.sinba.common.system.dto.TransactionRecordDTO;
import com.sinba.common.system.entity.TransactionRecord;

import java.util.List;

public interface ITransactionRecordDAO
    extends IEntityDAO<TransactionRecord>
{
    PageDTO findTransactionRecordPager( TransactionRecordDTO dto, String sord, String sidx );

    boolean todayIsTrans( String loginName );

    List<TransactionRecord> findTransactionRecord( TransactionRecordDTO dto );

    List<SingleGroupReportStatDTO> transacGroupReportStat( TransactionRecordDTO dto );

    /**
     * 分组统计报表(与登录名来进行分�?
     * @param dto
     * @return
     */
    List<SingleGroupReportStatDTO> transacGroupReportStatByLoginName( TransactionRecordDTO dto );

    List<SingleGroupReportStatDTO> statRecharge( TransactionRecordDTO dto );

    //查询钱包余额
    List<TransactionRecord> findUserBalance( String loginName, String dtype );

    /**
     * 判断当天是否有交易记�?
             * @param loginName
     * @return
     */
    boolean todayIsRecord( String loginName, String type );
    boolean todayIsRecordUseTiXian( String loginName, String type );
    /**
     * 统计各账户收入�?支出统计
     */
    List<SingleGroupReportStatDTO> statAccount( TransactionRecordDTO dto );

    List<TransactionRecord> findTransactionRecord( String loginName, String transactionType );

    //统计静�?、动态奖�?
    List<SingleGroupReportStatDTO> statDtype( TransactionRecordDTO dto );
    
    Double statFengHong(String loginName);
    
    Double statOut(String loginName);
    List<Object> statStatic(String loginName);
    
    /**
	 * 统计动态奖金余额
	 * @return List<Object[]>
	 */
	List<Object[]> statDynamicAccountBalance();
	List<Object> statTotalAward(String loginName);
	boolean todayIsRecord( String loginName, String type ,String team1);
	List<Object> statStatic(String loginName,String remark);
}
